#region Microsoft Public License
/*
 * (c) Copyright Chenjun Wu. http://utablesdk.codeplex.com
 * 
 * This source is subject to the Microsoft Public License (Ms-PL).
 * Please see http://go.microsoft.com/fwlink/?LinkID=131993 for details.
 * All other rights reserved.
 */
#endregion

﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace UTable.Objects.Policies
{
    public class PhysicalLayoutPolicyParameter
    {
        private double _updateInterval = 0.03;

        public PhysicalLayoutPolicyParameter(Boolean enableWalls, double defaultLinearDamping, double defaultAngularDamping)
        {
            EnableWalls = enableWalls;
            DefaultAngularDamping = defaultAngularDamping;
            DefaultLinearDamping = defaultLinearDamping;
            CollisionPolicy = null;
            ScalePolicy = null;
            DampingPolicy = null;
        }

        public Boolean EnableWalls { get; set; }

        public double DefaultLinearDamping { get; set; }

        public double DefaultAngularDamping { get; set; }

        public PhysicalCollisionPolicy CollisionPolicy { get; set; }

        public PhysicalScalePolicy ScalePolicy { get; set; }

        public PhysicalDampingPolicy DampingPolicy { get; set; }

        public double UpdateInterval 
        {
            get { return _updateInterval; }
            set { _updateInterval = value; }
        }
    }
}
